Skip to content

rw2: rc.5 version - #3080

Open
bwplotka wants to merge 3 commits into
mainfrom
rw2-spec-rc5
Open

bwplotka wants to merge 3 commits into
mainfrom
rw2-spec-rc5

Conversation

@bwplotka

@bwplotka bwplotka commented Aug 25, 2026 •

Copy link
Copy Markdown
Member

Signed-off-by: bwplotka <bwplotka@gmail.com>
jan--f
jan--f previously approved these changes Aug 26, 2026

@jan--f jan--f left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm from the doc repo perspective. Feel free to merge

@bwplotka bwplotka changed the title rw2: bump version rw2: rc.5 version Aug 26, 2026
@bwplotka
bwplotka marked this pull request as draft August 26, 2026 14:06
* rm2: Async spec support

See
https://docs.google.com/document/d/1AzEt6kOz4MJ855fBxtzvyyS-kDu8ynXiJy6VCSUQcSI/edit

Signed-off-by: bwplotka <bwplotka@gmail.com>

* Update docs/specs/prw/remote_write_spec_2_0.md

Signed-off-by: Bartlomiej Plotka <bwplotka@gmail.com>

* Update docs/specs/prw/remote_write_spec_2_0.md

Co-authored-by: George Krajcsovits <krajorama@users.noreply.github.com>
Signed-off-by: Bartlomiej Plotka <bwplotka@gmail.com>

---------

Signed-off-by: bwplotka <bwplotka@gmail.com>
Signed-off-by: Bartlomiej Plotka <bwplotka@gmail.com>
Co-authored-by: George Krajcsovits <krajorama@users.noreply.github.com>
* RW 2.0-rc.5: allow exemplar-only time series

Prometheus stores exemplars per series, not per sample. populateV2TimeSeries
writes one output TimeSeries per queue item, and for an exemplar item it
appends only an exemplar, so an exemplar can leave the sender in a TimeSeries
of its own. The specification requires every TimeSeries to carry a sample or a
histogram, so that shape is not covered.

Describe it instead of forbidding it, and keep the expectation that the
exemplars travel in the same request as the series they belong to.

Related to prometheus/prometheus#17857 and prometheus/prometheus#16944.

Signed-off-by: thc1006 <84045975+thc1006@users.noreply.github.com>

* RW 2.0-rc.5: match the embedded protobuf comments

The copy of io.prometheus.write.v2 in this document still says a TimeSeries
specifies samples or histograms, and that exemplars belong to the series'
samples. Neither holds once a TimeSeries can carry exemplars on its own.

krajorama spotted this in review. The same three comments live in
prompb/io/prometheus/write/v2/types.proto, which is the source of truth, so
they are changed there too.

Signed-off-by: thc1006 <84045975+thc1006@users.noreply.github.com>

* RW 2.0-rc.5: drop the same-request SHOULD

What this PR is about is that an exemplar-only TimeSeries is valid and that it
identifies its series by labels_refs. Whether a sender keeps a series'
exemplars in the same request as its samples is a different question. It is
about interoperability rather than about what the wire format allows, and it
is the part of this change that is under discussion in review.

Taking it out leaves the wire format statement on its own. Co-location is
worth writing down, just not in this rule.

Signed-off-by: thc1006 <84045975+thc1006@users.noreply.github.com>

* RW 2.0-rc.5: rule out metadata-only time series

The at-least-one rule names samples, histograms and exemplars, so a TimeSeries
carrying only metadata is already invalid. That is left to be inferred from a
list rather than stated, which bwplotka flagged in review.

State it in the rule. Then say what metadata means on the shape this PR adds,
because an exemplar-only TimeSeries still carries the field and the Prometheus
sender fills it. Calling it series-level and letting Receivers ignore it means
a sender cannot rely on that shape to deliver metadata.

Signed-off-by: thc1006 <84045975+thc1006@users.noreply.github.com>

* RW 2.0-rc.5: apply the review wording

bwplotka's suggestions, applied as given. The at-least-one rule splits into two
bullets and makes the metadata point an example rather than a second clause.
The exemplar bullet loses the sentence about metadata on a sample-less
TimeSeries. The two exemplar comments in the embedded protobuf now say the
exemplars may belong to the series or to its samples and histograms.

Those two comments are the ones prometheus/prometheus#19530 changes in the
source proto, so they move together there, which is what krajorama asked for
when this pair was opened.

Signed-off-by: thc1006 <84045975+thc1006@users.noreply.github.com>

---------

Signed-off-by: thc1006 <84045975+thc1006@users.noreply.github.com>
@bwplotka
bwplotka marked this pull request as ready for review September 27, 2026 20:58
@bwplotka
bwplotka requested a review from krajorama September 28, 2026 10:16
@bwplotka

Copy link
Copy Markdown
Member Author

This should be good to go @krajorama

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants